In mathematics, a unary operation is an operation with only one operand, i.e. a single input. Specifically, it is a function
where A is a set. In this case f is called a unary operation on A.
Common notations are prefix notation (e.g. +, −, not), postfix notation (e.g. factorial: n!), functional notation (e.g. sin x or sin (x)), and superscripts (e.g. transpose AT). Other notation exists as well, for example in the case of the square root a horizontal bar over the argument extending the square root sign can indicate the extent of the argument.
Contents |
As unary operations have only one operand they are evaluated before other operations containing them. Here is an example using negation:
Here the first '−' represents the binary subtraction operation, while the second '−' represents the unary negation of the 2. Therefore, the expression is equal to:
Technically there is also a unary positive but it is not needed since we assume a value to be positive:
Unary positive does not change the sign of a negative operation:
In this case a unary negative is needed to change the sign:
Unary operators (called "monadic" in APL) are also used in programming languages.
In the C family of languages, the following operators are unary:
++x, x++
−−x, x−−
&x
*x
+x
−x
~x
!x
sizeof x, sizeof(type-name)
(type-name) cast-expression
++$x, $x++
−−$x, $x−−
+$x
−$x
-not $x
.$x
&$x
[type-name] cast-expression